#ifndef __LXZ_RUNLOG_H__
#define __LXZ_RUNLOG_H__

#define LXZ_DEF_LOG_DIR "runlog"

#define LXZ_LOGFILE_MIN_SIZE ((1024)*(128))
#define LXZ_LOGFILE_MAX_SIZE ((1024)*(512))
#define LXZ_LOGFILE_NEW_CYCLE ((3600)*(24)*(7))

#define LST_LOGGER_PATH_MAX 128
#define LST_SHCMD_LEN_MAX 128

sint32 lxz_runlog_f_init(uint08* u_rel_dir);
sint32 lxz_runlog_f_fsize(void);
sint32 lxz_runlog_f_printf(const char * vfmt, ...);
sint32 lxz_runlog_f_printfhex(const char * vbuf, sint32 ilen);
sint32 lxz_runlog_f_reset(void);

sint32 lst_fota_f_check(void);

sint32 lst_logger_f_init(sint32 i_recommend_logmode);
sint32 lst_logger_f_check(void);
sint32 lst_logger_f_printf(const char * vfmt, ...);

void * lst_logtimer_f_new(void);
void lst_logtimer_f_update(void * p_logtimer_ctxt);
sint32 lst_logtimer_f_printf(void * p_logtimer_ctxt, const char * vfmt, ...);
void lst_logtimer_f_final(void * p_logtimer_ctxt);

void lst_glogtimer_f_new(void);
void lst_glogtimer_f_update(void);
sint32 lst_glogtimer_f_printf(const char * vfmt, ...);
void lst_glogtimer_f_final(void);

#endif /* __LXZ_RUNLOG_H__ */

